﻿using System;
using DAL;
using NLog;
using System.ServiceModel.Syndication;
using System.Collections.Generic;
using System.Xml;
using Entity;
using System.Data;

public partial class _Default : System.Web.UI.Page
{
    #region Variables
    private static Logger _logger = LogManager.GetCurrentClassLogger();
    SiteConfiguration objSiteConfiguration;
    #endregion

    #region Pageload
    protected void Page_Load(object sender, EventArgs e)
    {
        try
        {
            if (!IsPostBack)
            {
                ManageArticls objManageArticls = new ManageArticls();
                DataSet objDataSetAllSubCat = objManageArticls.GetTop4ListHomePageNewsLarg(12);



                rptLatestArticlsMain.DataSource = objDataSetAllSubCat.Tables[0];
                rptLatestArticlsMain.DataBind();
                rptLatestArticlsSub.DataSource = objDataSetAllSubCat.Tables[1];
                rptLatestArticlsSub.DataBind();


                //spain leagues
                rptNews_1_1.DataSource = objDataSetAllSubCat.Tables[2];
                rptNews_1_1.DataBind();
                rptNews_1_2.DataSource = objDataSetAllSubCat.Tables[3];
                rptNews_1_2.DataBind();


                //England leagues
                rptNews_2_1.DataSource = objDataSetAllSubCat.Tables[4];
                rptNews_2_1.DataBind();
                rptNews_2_2.DataSource = objDataSetAllSubCat.Tables[5];
                rptNews_2_2.DataBind();


                //Germany leagues
                rptNews_3_1.DataSource = objDataSetAllSubCat.Tables[6];
                rptNews_3_1.DataBind();
                rptNews_3_2.DataSource = objDataSetAllSubCat.Tables[7];
                rptNews_3_2.DataBind();


                //Itlain leagues
                rptNews_4_1.DataSource = objDataSetAllSubCat.Tables[8];
                rptNews_4_1.DataBind();
                rptNews_4_2.DataSource = objDataSetAllSubCat.Tables[9];
                rptNews_4_2.DataBind();


                //Arabic leagues
                rptNews_5_1.DataSource = objDataSetAllSubCat.Tables[10];
                rptNews_5_1.DataBind();
                rptNews_5_2.DataSource = objDataSetAllSubCat.Tables[11];
                rptNews_5_2.DataBind();


                //WorldCup leagues
                rptNews_6_1.DataSource = objDataSetAllSubCat.Tables[12];
                rptNews_6_1.DataBind();
                rptNews_6_2.DataSource = objDataSetAllSubCat.Tables[13];
                rptNews_6_2.DataBind();


                //دوري ابطال اروبا
                rptNews_0_0.DataSource = objDataSetAllSubCat.Tables[16];
                rptNews_0_0.DataBind();
                rptNews_0_1.DataSource = objDataSetAllSubCat.Tables[17];
                rptNews_0_1.DataBind();


                //Other News
                rptNews_7_1.DataSource = objManageArticls.GetTopTenReleatedNews(18);
                rptNews_7_1.DataBind();


                PageTitle.Text = "بث مباشر للمباريات المهمة - مواعيد و نتائج المباريات | الدوري الاسباني-الإنجليزي-الالماني-أبطال ارويا-كاس العالم 2014 | أخبار كرة القدم – LiveKora";
                Page.MetaDescription = "موقع رياضي يغطي اخر اخبار الدوري الاسباني و الانجليزية و الايطالي و الالماني و مواعيد ونتائج المباريات والبث المباشر للمباريات و الفيديوهات-liveKora";
            }
        }
        catch (Exception ex)
        {
            _logger.Error("_Default:::Page_Load:::" + ex.Message);
            throw;
        }
    }
    #endregion

    #region Methods
    protected string GetDateFormat(string sDataTime)
    {
        try
        {
            return Convert.ToDateTime(sDataTime).ToShortDateString();
        }
        catch (Exception)
        {
            return "Unknown";
        }
    }
    protected string SplitArticlsTitle(string sArticlsTitle)
    {
        try
        {
            if (sArticlsTitle.Length > 45)
            {
                return sArticlsTitle.Substring(0, 44) + "...";
            }
            else
            {
                return sArticlsTitle;
            }
        }
        catch (Exception)
        {
            return "Unknown";
        }
    }
    //protected string GetWebsiteTitle()
    //{
    //    try
    //    { 
    //        if (!string.IsNullOrEmpty(FormsFunction.RetrieveWebConfig().SiteName))
    //            return FormsFunction.RetrieveWebConfig().SiteName;
    //        else
    //            return "أخبار كرة القدم | لايف كورة الرياضي | آخر الأحداث الرياضية و كرة القدم – LiveKora  لايف كورة";
    //    }
    //    catch (Exception ex)
    //    {
    //        _logger.Error("_Default::Client:::GetWebsiteTitle:::" + ex.Message);
    //        return "أخبار كرة القدم | لايف كورة الرياضي | آخر الأحداث الرياضية و كرة القدم – LiveKora  لايف كورة";
    //    }
    //}
    //protected string GetWebsiteDescription()
    //{
    //    try
    //    {
    //        if (!string.IsNullOrEmpty(FormsFunction.RetrieveWebConfig().MetaDescription))
    //            return FormsFunction.RetrieveWebConfig().MetaDescription;
    //        else
    //            return "موقع رياضي رائع يغطي كافة اخبار الدور الاسباني و الكرة الانجليزية و الكرة الايطالية و الكرة العالمية جميعا و مواعيد المباريات والبث المباشر للمباريات المهمة و الحصرية ونتائج المباريات - liveKora";

    //    }
    //    catch (Exception ex)
    //    {
    //        _logger.Error("Default::Client:::GetWebsiteDescription:::" + ex.Message);
    //        return "موقع رياضي رائع يغطي كافة اخبار الدور الاسباني و الكرة الانجليزية و الكرة الايطالية و الكرة العالمية جميعا و مواعيد المباريات والبث المباشر للمباريات المهمة و الحصرية ونتائج المباريات - liveKora";
    //    }
    //}
    protected string GenerateURL(object Title, object strId)
    {
        string strTitle = Title.ToString();

        //#region Generate SEO Friendly URL based on Title

        strTitle = strTitle.Trim();
        strTitle = strTitle.Trim('-');

        strTitle = strTitle.ToLower();
        char[] chars = @"$%#@!*?;:~`+=()[]{}|\'<>,/^&"".".ToCharArray();
        strTitle = strTitle.Replace("c#", "C-Sharp");
        strTitle = strTitle.Replace("vb.net", "VB-Net");
        strTitle = strTitle.Replace("asp.net", "Asp-Net");
        strTitle = strTitle.Replace(".", "-");
        for (int i = 0; i < chars.Length; i++)
        {
            string strChar = chars.GetValue(i).ToString();
            if (strTitle.Contains(strChar))
            {
                strTitle = strTitle.Replace(strChar, string.Empty);
            }
        }
        strTitle = strTitle.Replace(" ", "-");

        strTitle = strTitle.Replace("--", "-");
        strTitle = strTitle.Replace("---", "-");
        strTitle = strTitle.Replace("----", "-");
        strTitle = strTitle.Replace("-----", "-");
        strTitle = strTitle.Replace("----", "-");
        strTitle = strTitle.Replace("---", "-");
        strTitle = strTitle.Replace("--", "-");
        strTitle = strTitle.Trim();
        strTitle = strTitle.Trim('-');
        strTitle = "Articles/" + strId + "/" + strTitle;

        return strTitle;
    }
    #endregion
}